LinuxQMISDK-Lite  SLQS04.00.27
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
QmiSyncObject.h
Go to the documentation of this file.
1 
6 #ifndef __QMI_SYNC_OBJECT_H__
7 #define __QMI_SYNC_OBJECT_H__
8 
9 #include <stdint.h>
10 #include <pthread.h>
11 
12 #ifdef __cplusplus
13 extern "C" {
14 #endif
15 
21 #define MAX_QMI_PACKET_SIZE (2048 - 6)
22 
45 typedef struct QmiSyncObject
46 {
47  pthread_mutex_t mutex;
48  pthread_cond_t condition;
49  uint8_t buffer[MAX_QMI_PACKET_SIZE]; // Can be used for outgoing and incoming data
50  uint16_t bufferSize; // Will be set to number of incoming bytes
52 
61 
70 
79 
88 
97 
107 int QmiSyncObject_TimedWait(QmiSyncObject* pThis, time_t timeoutSeconds);
108 
117 
126 void QmiSyncObject_ResponseCallback(uint8_t* qmiPacket, uint16_t qmiPacketSize, void* pResponseCallbackContext);
127 
128 
129 #ifdef __cplusplus
130 } /* extern "C" { */
131 #endif
132 
133 #endif //__QMI_SYNC_OBJECT_H__
int QmiSyncObject_Lock(QmiSyncObject *pThis)
int QmiSyncObject_Destroy(QmiSyncObject *pThis)
void QmiSyncObject_ResponseCallback(uint8_t *qmiPacket, uint16_t qmiPacketSize, void *pResponseCallbackContext)
uint8_t buffer[(2048-6)]
Definition: QmiSyncObject.h:49
pthread_cond_t condition
Definition: QmiSyncObject.h:48
int QmiSyncObject_Signal(QmiSyncObject *pThis)
uint16_t bufferSize
Definition: QmiSyncObject.h:50
Definition: QmiSyncObject.h:45
int QmiSyncObject_Wait(QmiSyncObject *pThis)
int QmiSyncObject_TimedWait(QmiSyncObject *pThis, time_t timeoutSeconds)
int QmiSyncObject_Initialize(QmiSyncObject *pThis)
#define MAX_QMI_PACKET_SIZE
Definition: QmiSyncObject.h:21
struct QmiSyncObject QmiSyncObject
int QmiSyncObject_Unlock(QmiSyncObject *pThis)
pthread_mutex_t mutex
Definition: QmiSyncObject.h:47

Copyright (c) 2011-2015 Sierra Wireless, Inc. All rights reserved